package com.vr.xuecheng.auth.dto;

import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

/**
 * @author hzh
 * @date 2025/03/30
 * 登录时的参数
 */
@Data
public class AuthParamsDTO implements Serializable {
    @Serial
    private static final long serialVersionUID = -7577185139011031184L;
    /**
     * 用户名
     */
    private String username;
    /**
     * 密码
     */
    private String password;
    /**
     * 手机号
     */
    private String cellphone;
    /**
     * 验证码
     */
    private String checkcode;
    /**
     * 验证码key
     */
    private String checkcodekey;
    /**
     * 认证的类型
     * password:用户名密码模式类型
     * sms:短信模式类型
     * 如认证类型为短信时包含smsKey : sms:3d21042d054548b08477142bbca95cfa; 所有情况下都包含clientId
     */
    private String authType;
    /**
     * 附加数据，作为扩展，不同认证类型可拥有不同的附加数据。
     */
    private Map<String, Object> payload = new HashMap<>();
}
